import numpy as np
import pandas as pd

df = pd.DataFrame(np.arange(40).reshape(5, 8), index=list('ABCDE'), columns=list('abcdefgh'))
print(df)

# 查看前2行
print(df.head(2))

# 查看后2行
print(df.tail(2))

# 切片默认是行  A-C行的数据
print(df['A':'C'])

# 索引默认是列
print(df['a'])

# 花式索引,先行后列  A行,c-d列的数据
print(df.loc[['A'], 'c':'d'])

# a列大于20的数据
print(df.loc[df['a'] > 20, 'a'])
print(df.loc[:, 'a'][df['a'] > 20])

# 使用sum默认对每列求和，sum(1)为对每行求和
print(df.sum(0))
print(df.sum(1))

# 求平方
print(df ** 2)

# 新增一行
df['h'] = '99'
print(df)

# 合并
df1 = pd.DataFrame(np.random.choice(['P'], size=(5, 2)), index=list('ABCDE'), columns=list('ij'))
print(df1)
df2 = df.join(df1)
print(df2)
